Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Proposal for supporting Blake2b #2024

Closed
wants to merge 145 commits into from
Closed

Conversation

MadeofTin
Copy link
Contributor

@MadeofTin MadeofTin commented May 13, 2019

There has recently been a call for developers to work on Blake2b to be implemented into the Istanbul Hardfork. https://ethereum-magicians.org/t/blake2b-f-precompile/3157

I can do the necessary legwork so the EIP can be considered for Istanbul as well as act in a coordinating role and point of contact for developers. Here is a new pull request which I will continue to update as development progresses. I couldn't figure out how to fork the original PR and so rewrote it below.

Closes #131.

AC0DEM0NK3Y and others added 9 commits June 7, 2019 23:47
Hi, I'm a bot! This change was automatically merged because:

 - It only modifies existing Draft or Last Call EIP(s)
 - The PR was approved or written by at least one author of each modified EIP
 - The build is passing
Hi, I'm a bot! This change was automatically merged because:

 - It only modifies existing Draft or Last Call EIP(s)
 - The PR was approved or written by at least one author of each modified EIP
 - The build is passing
Hi, I'm a bot! This change was automatically merged because:

 - It only modifies existing Draft or Last Call EIP(s)
 - The PR was approved or written by at least one author of each modified EIP
 - The build is passing
Add EIP-1474 as a requirement to RPC ERCs
Add special requirement in EIP-1 for mentioning EVM instructions
Change the citation format in README to point to EIP-1
Hi, I'm a bot! This change was automatically merged because:

 - It only modifies existing Draft or Last Call EIP(s)
 - The PR was approved or written by at least one author of each modified EIP
 - The build is passing
Hi, I'm a bot! This change was automatically merged because:

 - It only modifies existing Draft or Last Call EIP(s)
 - The PR was approved or written by at least one author of each modified EIP
 - The build is passing
Hi, I'm a bot! This change was automatically merged because:

 - It only modifies existing Draft or Last Call EIP(s)
 - The PR was approved or written by at least one author of each modified EIP
 - The build is passing
coinfork and others added 7 commits June 14, 2019 11:50
Hi, I'm a bot! This change was automatically merged because:

 - It only modifies existing Draft or Last Call EIP(s)
 - The PR was approved or written by at least one author of each modified EIP
 - The build is passing
Hi, I'm a bot! This change was automatically merged because:

 - It only modifies existing Draft or Last Call EIP(s)
 - The PR was approved or written by at least one author of each modified EIP
 - The build is passing
Also added myself as an author
Should have a working geth precompile and initial benchmarks shortly
While 2046's cheaper precompile contract calls aren't a requirement for
this EIP's implementation, shipping this precompile without EIP-2046
would make the F function expensive for some of the motivating usecases.
@axic axic added the EIP label Jun 20, 2019
Replace the existing ABI encoding interface to the BLAKE2b `F`
precompile with a loosely pack struct that's `staticcall`-friendly.

H/t to @pdyraga for putting together the interface!
Let's not relitigate precompiles, WASM, etc in thie EIP :)
If a conflicting EIP is moving forward the EIP editor can assign a new
address
@mhluongo
Copy link
Contributor

We've shipped an alternative / supplemental EIP and implementation that covers this use case- would love your thoughts @axic @cdetrio

mhluongo and others added 4 commits June 21, 2019 08:36
Contributing docs suggest EIPs be named `eip-draft-with-a-title` until
an editor has been assigned, but discussing this work off-platform
without a number is a problem.

Assigning 152 as the issue number where the `F` precompile was
originally raised (ethereum#152)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.